草庐IT

HA 模式

全部标签

c# - 如何从 UI 自动化模式提供程序返回错误?

假设我在我的自定义控件中实现了一些UIA模式。比如,TablePattern。如果出现任何问题,现有的实现将返回null。但是调试起来不是很方便。我可能在自动化同行中有更多的上下文。例如,对于GetItem(introw,intcolumn),我可能会说提供的参数超出范围,而不仅仅是返回null。如果我从自动化对等端抛出异常-在UIA客户端,我从IUIAutomationPatternInstance对象中获取TargetInvocationException,但没有任何详细信息(InnerException属性为null)。有没有办法让UIA将带有一些附加信息的错误从UIA服务器端传

c# - Entity Framework 和多个模式

我正在尝试设置我的dbContext,以便它可以处理单个Oracle数据库中的多个模式。我不想要一个单一的dbContext文件,所以我想出了以下内容:publicclassoraDbContext:DbContext{staticoraDbContext(){Database.SetInitializer(null);}publicoraDbContext(stringconnName):base("Name="+connName){}public_schema1schema1=_schema1.Instance;public_schema2schema2=_schema2.Inst

c# - 不同 DbContext 和不同模式之间的 Entity Framework 关系

因此,我有两个主要对象,Member和Guild。一个成员(member)可以拥有一个公会,一个公会可以有多个成员(member)。我在单独的DbContext和单独的类库中有Members类。我计划在多个项目中重用这个类库并帮助区分,我将数据库模式设置为“acc”。我已经广泛测试了这个库,可以在acc.Members表中添加、删除和更新成员。公会类是这样的:publicclassGuild{publicGuild(){Members=newList();}publicintID{get;set;}publicintMemberID{get;set;}publicvirtualMemb

c# - 如何优雅地处理 winforms 应用程序中的休眠/ sleep 模式?

我正在使用C#在.net中编写Windows窗体应用程序。我遇到了一个问题,如果我的程序在计算机进入休眠和/或休眠状态时运行(我现在不确定是哪一个或两个导致问题),当机器再次醒来程序只是挂起。退出它的唯一方法是从任务管理器中终止进程。出于显而易见的原因,这不是我希望程序运行的方式。即使我只是在程序进入这些状态时关闭程序,那也很好,但我不太确定如何执行此操作,或者是否有更优雅的方式来处理此问题。 最佳答案 你需要:usingMicrosoft.Win32;这是代码:voidSystemEvents_PowerModeChanged(o

c# - 使用 FileStream.ReadAsync() 时,我应该以异步模式打开文件吗?

为FileStream执行异步I/O的旧.Net方法是使用FileStream.BeginRead()和FileStream.EndRead().FileStream.BeginRead()的MSDN文档指出:FileStreamprovidestwodifferentmodesofoperation:synchronousI/OandasynchronousI/O.Whileeithercanbeused,theunderlyingoperatingsystemresourcesmightallowaccessinonlyoneofthesemodes.Bydefault,FileS

c# - 寻找解释设计模式的高质量视频

关闭。这个问题是off-topic.它目前不接受答案。想改进这个问题吗?Updatethequestion所以它是on-topic用于堆栈溢出。关闭11年前。Improvethisquestion我正在寻找解释设计模式的高质量视频。谁能推荐我可以下载并在我的电脑上观看的视频。我愿意为视频付费。

c# - Memento 模式是如何在 C#4 中实现的?

MementoPattern本身看起来很简单。我正在考虑实现与维基百科示例相同的方法,但在我实现之前,是否有任何C#语言功能可以使其更易于实现或使用? 最佳答案 一个明显的特性是泛型,实现一个泛型纪念品将允许您将它用于任何您想要的对象。您将看到的许多示例都将使用字符串(包括当前对该问题的答复中的所有示例)作为状态,这是一个问题,因为它是.NET中不可变。在处理可变对象时(就像任何具有setter属性的引用类型),您必须记住,当您保存备忘录时,您需要创建对象的深拷贝。否则,每当您更改原始对象时,您都会更改您的纪念品。您可以使用像pro

c# - C# 中的通用空对象模式

我想知道是否有任何方法可以在C#中实现通用空对象模式。通用空对象是所有引用类型的子类,就像Nothing一样。在斯卡拉。好像是publicclassNothing:TwhereT:class但是它无法编译而且我不知道如何实现T的方法提供默认行为或抛出异常。以下是一些想法:使用反射?创建时使用表达式树Nothing?它可能看起来像最小起订量。另一个问题来了:在产品代码中使用模拟框架/库是否可以?使用动态类型?我知道也许我应该为特定类型实现特定的空对象。我只是想知道是否有任何解决方案。有什么建议吗?谢谢。 最佳答案 使用泛型,您不能定义

c# - 存储库模式中的 IQueryable 与 IEnumerable,延迟加载

我读过一些文章,指出IEnumerable用于模拟存储过程或限制您的数据库。失去了对外部提供商的延迟加载能力。IQueryable为开发人员提供了更大的灵active。那里有延迟加载。就性能而言,两者都消耗大量性能..那么哪个更可取? 最佳答案 从RepositoryPattern的角度,可以这样想:如果您想一次性将整个列表传递给客户端,请使用预加载IEnumerable。他们仍然可以添加linq子句,但客户端不会从延迟执行中受益。如果您希望通过允许客户端添加自己的linq子句将延迟查询功能扩展到客户端,请使用延迟加载IQuerya

c# - 什么是 Humble Object 模式,它何时有用?

我正在阅读anarticlebyDinoEspositoonhowtotestAsyncConrollersinASP.NETMVC并且在那里他使用了“不起眼的对象”模式,但没有详细介绍。我在谷歌上也没有太多运气。那么,什么是谦虚对象模式?什么时候有用? 最佳答案 有athoroughdescriptionatxunitpatterns.com.基本上,您将所有逻辑拉到一个单独的对象中,您可以轻松地对其进行测试-而您的“低级对象”将成为您可测试对象的包装器;只是不起眼的对象还依赖于难以测试的事物,例如异步服务或GUI类。这个想法是在